The present invention relates to label readers, and more particularly, to a method and a label reader apparatus for reading bar code labels. Recently, computer based systems for inventory control have seen widespread use in supermarkets, department stores, warehouses, and the like. The successful operation of these computerized inventory systems is dependent, typically, upon the ability of certain peripheral equipment known as label readers to reliably read data encoded into the labels associated with the inventory goods and to then provide correct data to the central computer.
Typical label codes associated with inventory items include so-called bar codes consisting of a plurality of bars of different widths or colors. The arrangements of the bars in such a code can be interpreted by the central computer, based upon the data provided by the label reader, to identify the particular inventory goods involved. Such bar codes are usually printed on price tags or other labels associated with the inventory items.
Conventional label readers generally use optical means to optically scan bar code labels. Such optical means typically includes a photoelectric converter means such as a photomultiplier tube which produces output signals representative of the bars comprising the scanned bar code label. The output signals from such photoelectric converts typically include noise signals arising, for example, from "shading", glittering or undulation of the label surface, and interfering light from external light sources, and light diffused from external objects located nearby. Also, the output signals from such devices normally suffer from amplitude variations as the distance between the light receiving surface of the detecting means and the label surface varies. Additionally, often the diameter of the ray from the laser or other light beam source used to scan a bar code is significant relative to a typical bar width in a bar code label. When this situation exists, the output signal from the photoelectric converter may inherently include a minimum level between the two extreme levels corresponding to pure black and white colors on a label surface.
Another consideration is that conventional wave shaping or normalizing is often employed in the process of extracting the bar width information from the output signals from a photoelectric converter. Often, for example, automatic gain control (AGC) is applied to maintain a constant average output level from an amplifier having an average input level which varies with time. With such a system, when the output signal from the photoelectric converter changes abruptly or randomly due to undulations on a label surface, a AGC amplifier approach may be partially or completely ineffective. This can occur, for example, because the output signal from the photoelectric converter will vary as a function of the distance between the light receiving surface of the photoelectric converter and the label surface, or with noise resulting from external sources or conditions.
Also, in many conventional label readers, the output signal from the photoelectric converter is first differentiated and then filtered through a high pass filter to remove the high frequency noise components therefrom and to smooth the signal to facilitate subsequent detection of the points corresponding to black-to-white transitions and vice versa corresponding to the successive bars and spaces in a bar code. Signals shaped using these conventional techniques, however, may have unstable amplitudes thereby creating other difficulties.
Still other difficulties are encountered in systems in which the output signal from the photoelectric converter is compared with only a single threshold level. In such systems, only signals exceeding the threshold level are detected and converted into rectangular output pulses, and therefore, if an input signal to the threshold detector fails to reach the threshold level, a bar (or space) of a bar code may be omitted or not detected, even though consideration of the overall waveform would indicate that a bar (or space) has just been read.